/*
 * @(#)ParameterInfo.java $version 2010. 8. 11
 *
 * Copyright 2007-2010 NHN Corp. All rights Reserved. 
 * NHN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
 */
package com.nhncorp.usf.core.config.runtime;

/**
 * 메소드 수행을 위해 전달되어야 하는 Parameter 정보.
 *
 * @author Web Platform Development Team.
 */
public class ParameterInfo {
    /**
     * 파라미터 식별자( 이름)
     */
    private String id;

    /**
     * 파라미터 값을 가진 객체의 참조명.
     * 사용자가 전달한 request 정보를 담은 {@link Map} 의 key 를 참조한다.
     */
    private String ref;

    /**
     * 값이 없는 경우 기본으로 사용될 값.
     */
    private String defaultValue;

    /**
     * 생성자
     */
    public ParameterInfo(String id, String ref, String defaultValue) {
        this.id = id;
        this.ref = ref;
        this.defaultValue = defaultValue;
    }

    /**
     * 파라미터 식별자( 이름) 반환.
     *
     * @return the parameter id
     */
    public String getId() {
        return this.id;
    }

    /**
     * 파라미터 값을 가진 객체의 참조명 반환.
     *
     * @return the parameter ref name
     */
    public String getRef() {
        return this.ref;
    }

    /**
     * 파라미터에 대한 기본값 반환.
     *
     * @return the parameter default value
     */
    public String getDefaultValue() {
        return defaultValue;
    }
}
